package com.imufe.chemicalenterprisedangerwarning.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.imufe.chemicalenterprisedangerwarning.entity.po.SafetySupervisionBureauPO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.imufe.chemicalenterprisedangerwarning.entity.query.SafetySupervisionBureauQuery;
import com.imufe.chemicalenterprisedangerwarning.entity.vo.SafetySupervisionBureauDetailedVO;
import com.imufe.chemicalenterprisedangerwarning.entity.vo.SafetySupervisionBureauVO;

/**
 * <p>
 * 安监局 服务类
 * </p>
 *
 * @author BaiBan
 * @since 2022-09-23
 */
public interface SafetySupervisionBureauService extends IService<SafetySupervisionBureauPO> {

    /**
     * 安监局的基本信息
     * @param id 安监局编号
     */
    SafetySupervisionBureauVO basic(Long id);

    /**
     * 安监局的详细信息
     * @param id 安监局编号
     */
    SafetySupervisionBureauDetailedVO detailed(Long id);

    /**
     * 分页查询安监局列表
     */
    IPage<SafetySupervisionBureauVO> page(Long current);

    /**
     * 根据区域 返回最近的安监局编号和名称
     *
     * @param id 区域id
     * @return {@link SafetySupervisionBureauVO}
     */
    SafetySupervisionBureauVO getByRegion(Long id);

    /**
     * 新增一个安监局
     */
    SafetySupervisionBureauDetailedVO create(SafetySupervisionBureauQuery query);

    /**
     * 修改安监局信息
     */
    SafetySupervisionBureauDetailedVO update(SafetySupervisionBureauQuery query);
}
